/*Copyright (C) 2009 - 2011 Careil Baptiste

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef CURSOR_HEADER_CURSES
# define CURSOR_HEADER_CURSES

/* Permet de déplacer le curseur dans la direction 'way' et de value cases.
** Le changement de position du curseur n'est visible qu'après un refresh().
** way    : Le sens de déplacement.
** value  : Le nombre de cases à se déplacer (peut être une valeur négative)
** return : ERR si cela mène en dehors de l'écran
**          OK si le déplacement à réussit.
*/
void pmove(DIRECTION way, int value);

/* Permet de positionnner le curseur en début de ligne. Le changement ne sera
** visible qu'après un refresh();
*/
void goto_begin_line();

/* Cette fonction permet d'aller en début de la ligne suivante.
**
** return : OK Si le curseur a pu aller à la ligne suivante
**          ERR si la fonction a échouée.
*/
int goto_next_line();

/* Cette fonction permet d'aller en début de la ligne précédente.
**
** return : OK Si le curseur a pu aller à la ligne précédente
**          ERR En cas d'erreur.
*/
int goto_previous_line();

/* Cette fonction permet de sauvegarde la positon du curseur
**
** SA : restore_cursor_pos()
*/
void save_cursor_pos();

/* Cette fonction permet de restaurer la position du curseur
** précédemment sauvegarder. La position sauvegarder au lancement
** est (0,0), le coin en haut à gauche.
**
** SA : save_cursor_pos()
*/
void restore_cursor_pos();

#endif /* !CURSOR_HEADER_CURSES */
